
{*************************************************************************}
{                                                                         }
{                            XML Data Binding                             }
{                                                                         }
{         Generated on: 13/10/2009 16:51:57                               }
{       Generated from: D:\MKS_Desenvolvimento\GestorMKS\modeloNota.xsd   }
{                                                                         }
{*************************************************************************}

unit modeloNota2;

interface

uses xmldom, XMLDoc, XMLIntf;

type

{ Forward Decls }

  IXMLNotafiscal = interface;
  IXMLModelo = interface;
  IXMLElementoPadrao = interface;
  IXMLTipoPreenchimento = interface;
  IXMLPessoaTipo = interface;
  IXMLTransporteTipo = interface;
  IXMLItensNota = interface;
  IXMLItemSerie = interface;
  IXMLTipoObs = interface;

{ IXMLNotafiscal }

  IXMLNotafiscal = interface(IXMLNodeCollection)
    ['{378FF6B6-B691-44E2-B709-560E96F1869E}']
    { Property Accessors }
    function Get_Modelo(Index: Integer): IXMLModelo;
    { Methods & Properties }
    function Add: IXMLModelo;
    function Insert(const Index: Integer): IXMLModelo;
    property Modelo[Index: Integer]: IXMLModelo read Get_Modelo; default;
  end;

{ IXMLModelo }

  IXMLModelo = interface(IXMLNode)
    ['{D5C9ED39-D8B5-4788-B171-544E81D8E57E}']
    { Property Accessors }
    function Get_Default: Boolean;
    function Get_Nome: WideString;
    function Get_Empresa: WideString;
    function Get_Papel: WideString;
    function Get_Largura: Double;
    function Get_Altura: Double;
    function Get_QuantidadeLinhas: Integer;
    function Get_QuantidadeColunas: Integer;
    function Get_NumeroNota: IXMLElementoPadrao;
    function Get_LocalEntrada: IXMLTipoPreenchimento;
    function Get_LocalSaida: IXMLTipoPreenchimento;
    function Get_NaturezaOperacao: IXMLElementoPadrao;
    function Get_Cfop: IXMLElementoPadrao;
    function Get_DataEmissao: IXMLElementoPadrao;
    function Get_HoraEmissao: IXMLElementoPadrao;
    function Get_DataSaidaEntrada: IXMLElementoPadrao;
    function Get_HoraSaidaEntrada: IXMLElementoPadrao;
    function Get_Emitente: IXMLPessoaTipo;
    function Get_Destinatario: IXMLPessoaTipo;
    function Get_Transporte: IXMLTransporteTipo;
    function Get_Produtos: IXMLItensNota;
    function Get_Servicos: IXMLItensNota;
    function Get_Bcicms: IXMLElementoPadrao;
    function Get_Totalicms: IXMLElementoPadrao;
    function Get_BcimcsST: IXMLElementoPadrao;
    function Get_TotalicmsST: IXMLElementoPadrao;
    function Get_Totalprodutos: IXMLElementoPadrao;
    function Get_Valorfrete: IXMLElementoPadrao;
    function Get_Valoripi: IXMLElementoPadrao;
    function Get_Valorseguro: IXMLElementoPadrao;
    function Get_Valortotalnota: IXMLElementoPadrao;
    function Get_ValorISS: IXMLElementoPadrao;
    function Get_Observacoes: IXMLTipoObs;
    function Get_AliquotaISS: IXMLElementoPadrao;
    function Get_CondicoesPagamento: IXMLElementoPadrao;
    procedure Set_Default(Value: Boolean);
    procedure Set_Nome(Value: WideString);
    procedure Set_Empresa(Value: WideString);
    procedure Set_Papel(Value: WideString);
    procedure Set_Largura(Value: Double);
    procedure Set_Altura(Value: Double);
    procedure Set_QuantidadeLinhas(Value: Integer);
    procedure Set_QuantidadeColunas(Value: Integer);
    { Methods & Properties }
    property Default: Boolean read Get_Default write Set_Default;
    property Nome: WideString read Get_Nome write Set_Nome;
    property Empresa: WideString read Get_Empresa write Set_Empresa;
    property Papel: WideString read Get_Papel write Set_Papel;
    property Largura: Double read Get_Largura write Set_Largura;
    property Altura: Double read Get_Altura write Set_Altura;
    property QuantidadeLinhas: Integer read Get_QuantidadeLinhas write Set_QuantidadeLinhas;
    property QuantidadeColunas: Integer read Get_QuantidadeColunas write Set_QuantidadeColunas;
    property NumeroNota: IXMLElementoPadrao read Get_NumeroNota;
    property LocalEntrada: IXMLTipoPreenchimento read Get_LocalEntrada;
    property LocalSaida: IXMLTipoPreenchimento read Get_LocalSaida;
    property NaturezaOperacao: IXMLElementoPadrao read Get_NaturezaOperacao;
    property Cfop: IXMLElementoPadrao read Get_Cfop;
    property DataEmissao: IXMLElementoPadrao read Get_DataEmissao;
    property HoraEmissao: IXMLElementoPadrao read Get_HoraEmissao;
    property DataSaidaEntrada: IXMLElementoPadrao read Get_DataSaidaEntrada;
    property HoraSaidaEntrada: IXMLElementoPadrao read Get_HoraSaidaEntrada;
    property Emitente: IXMLPessoaTipo read Get_Emitente;
    property Destinatario: IXMLPessoaTipo read Get_Destinatario;
    property Transporte: IXMLTransporteTipo read Get_Transporte;
    property Produtos: IXMLItensNota read Get_Produtos;
    property Servicos: IXMLItensNota read Get_Servicos;
    property Bcicms: IXMLElementoPadrao read Get_Bcicms;
    property Totalicms: IXMLElementoPadrao read Get_Totalicms;
    property BcimcsST: IXMLElementoPadrao read Get_BcimcsST;
    property TotalicmsST: IXMLElementoPadrao read Get_TotalicmsST;
    property Totalprodutos: IXMLElementoPadrao read Get_Totalprodutos;
    property Valorfrete: IXMLElementoPadrao read Get_Valorfrete;
    property Valoripi: IXMLElementoPadrao read Get_Valoripi;
    property Valorseguro: IXMLElementoPadrao read Get_Valorseguro;
    property Valortotalnota: IXMLElementoPadrao read Get_Valortotalnota;
    property ValorISS: IXMLElementoPadrao read Get_ValorISS;
    property Observacoes: IXMLTipoObs read Get_Observacoes;
    property AliquotaISS: IXMLElementoPadrao read Get_AliquotaISS;
    property CondicoesPagamento: IXMLElementoPadrao read Get_CondicoesPagamento;
  end;

{ IXMLElementoPadrao }

  IXMLElementoPadrao = interface(IXMLNode)
    ['{A7528EA1-6130-41A2-83CF-045A3A877478}']
    { Property Accessors }
    function Get_Linha: Integer;
    function Get_Coluna: Integer;
    function Get_Visible: Boolean;
    function Get_TamanhoMaximo: Integer;
    function Get_Alinhamento: WideString;
    procedure Set_Linha(Value: Integer);
    procedure Set_Coluna(Value: Integer);
    procedure Set_Visible(Value: Boolean);
    procedure Set_TamanhoMaximo(Value: Integer);
    procedure Set_Alinhamento(Value: WideString);
    { Methods & Properties }
    property Linha: Integer read Get_Linha write Set_Linha;
    property Coluna: Integer read Get_Coluna write Set_Coluna;
    property Visible: Boolean read Get_Visible write Set_Visible;
    property TamanhoMaximo: Integer read Get_TamanhoMaximo write Set_TamanhoMaximo;
    property Alinhamento: WideString read Get_Alinhamento write Set_Alinhamento;
  end;

{ IXMLTipoPreenchimento }

  IXMLTipoPreenchimento = interface(IXMLNode)
    ['{972FA730-9512-46A3-AE46-5F6593E15587}']
    { Property Accessors }
    function Get_Linha: Integer;
    function Get_Coluna: Integer;
    function Get_Visible: Boolean;
    function Get_TamanhoMaximo: Integer;
    function Get_Alinhamento: WideString;
    function Get_PreencherCom: WideString;
    procedure Set_Linha(Value: Integer);
    procedure Set_Coluna(Value: Integer);
    procedure Set_Visible(Value: Boolean);
    procedure Set_TamanhoMaximo(Value: Integer);
    procedure Set_Alinhamento(Value: WideString);
    procedure Set_PreencherCom(Value: WideString);
    { Methods & Properties }
    property Linha: Integer read Get_Linha write Set_Linha;
    property Coluna: Integer read Get_Coluna write Set_Coluna;
    property Visible: Boolean read Get_Visible write Set_Visible;
    property TamanhoMaximo: Integer read Get_TamanhoMaximo write Set_TamanhoMaximo;
    property Alinhamento: WideString read Get_Alinhamento write Set_Alinhamento;
    property PreencherCom: WideString read Get_PreencherCom write Set_PreencherCom;
  end;

{ IXMLPessoaTipo }

  IXMLPessoaTipo = interface(IXMLNode)
    ['{F915E52F-3DC9-4088-ABA9-2BDE8466BEDD}']
    { Property Accessors }
    function Get_Linha: Integer;
    function Get_Visible: Boolean;
    function Get_Nome: IXMLElementoPadrao;
    function Get_Cpfcnpj: IXMLElementoPadrao;
    function Get_InscricaoEstadual: IXMLElementoPadrao;
    function Get_Logradouro: IXMLElementoPadrao;
    function Get_Bairro: IXMLElementoPadrao;
    function Get_Cep: IXMLElementoPadrao;
    function Get_Municipio: IXMLElementoPadrao;
    function Get_Fonefax: IXMLElementoPadrao;
    function Get_Uf: IXMLElementoPadrao;
    procedure Set_Linha(Value: Integer);
    procedure Set_Visible(Value: Boolean);
    { Methods & Properties }
    property Linha: Integer read Get_Linha write Set_Linha;
    property Visible: Boolean read Get_Visible write Set_Visible;
    property Nome: IXMLElementoPadrao read Get_Nome;
    property Cpfcnpj: IXMLElementoPadrao read Get_Cpfcnpj;
    property InscricaoEstadual: IXMLElementoPadrao read Get_InscricaoEstadual;
    property Logradouro: IXMLElementoPadrao read Get_Logradouro;
    property Bairro: IXMLElementoPadrao read Get_Bairro;
    property Cep: IXMLElementoPadrao read Get_Cep;
    property Municipio: IXMLElementoPadrao read Get_Municipio;
    property Fonefax: IXMLElementoPadrao read Get_Fonefax;
    property Uf: IXMLElementoPadrao read Get_Uf;
  end;

{ IXMLTransporteTipo }

  IXMLTransporteTipo = interface(IXMLPessoaTipo)
    ['{95774DEA-53C4-470F-AF8B-75B7C012930B}']
    { Property Accessors }
    function Get_Indicadorfrete: IXMLElementoPadrao;
    function Get_Placa: IXMLElementoPadrao;
    function Get_Placauf: IXMLElementoPadrao;
    function Get_Quantidade: IXMLElementoPadrao;
    function Get_Especie: IXMLElementoPadrao;
    function Get_Marca: IXMLElementoPadrao;
    function Get_Numero: IXMLElementoPadrao;
    function Get_Pesobruto: IXMLElementoPadrao;
    function Get_Pesoliquido: IXMLElementoPadrao;
    { Methods & Properties }
    property Indicadorfrete: IXMLElementoPadrao read Get_Indicadorfrete;
    property Placa: IXMLElementoPadrao read Get_Placa;
    property Placauf: IXMLElementoPadrao read Get_Placauf;
    property Quantidade: IXMLElementoPadrao read Get_Quantidade;
    property Especie: IXMLElementoPadrao read Get_Especie;
    property Marca: IXMLElementoPadrao read Get_Marca;
    property Numero: IXMLElementoPadrao read Get_Numero;
    property Pesobruto: IXMLElementoPadrao read Get_Pesobruto;
    property Pesoliquido: IXMLElementoPadrao read Get_Pesoliquido;
  end;

{ IXMLItensNota }

  IXMLItensNota = interface(IXMLNode)
    ['{632EA66A-4D5F-4FA1-95F3-01ED82EEF6CE}']
    { Property Accessors }
    function Get_MaxItens: Integer;
    function Get_Linha: Integer;
    function Get_Visible: Boolean;
    function Get_Colunacodigo: IXMLItemSerie;
    function Get_Colunadescricao: IXMLItemSerie;
    function Get_ColunaST: IXMLItemSerie;
    function Get_ColunaUnidade: IXMLItemSerie;
    function Get_ColunaQuantidade: IXMLItemSerie;
    function Get_ColunaValorUnitario: IXMLItemSerie;
    function Get_ColunaValorTotal: IXMLItemSerie;
    function Get_ColunaICMS: IXMLItemSerie;
    function Get_ColunaIPI: IXMLItemSerie;
    function Get_Clfiscal: IXMLItemSerie;
    function Get_ColunaISS: IXMLItemSerie;
    procedure Set_MaxItens(Value: Integer);
    procedure Set_Linha(Value: Integer);
    procedure Set_Visible(Value: Boolean);
    { Methods & Properties }
    property MaxItens: Integer read Get_MaxItens write Set_MaxItens;
    property Linha: Integer read Get_Linha write Set_Linha;
    property Visible: Boolean read Get_Visible write Set_Visible;
    property Colunacodigo: IXMLItemSerie read Get_Colunacodigo;
    property Colunadescricao: IXMLItemSerie read Get_Colunadescricao;
    property ColunaST: IXMLItemSerie read Get_ColunaST;
    property ColunaUnidade: IXMLItemSerie read Get_ColunaUnidade;
    property ColunaQuantidade: IXMLItemSerie read Get_ColunaQuantidade;
    property ColunaValorUnitario: IXMLItemSerie read Get_ColunaValorUnitario;
    property ColunaValorTotal: IXMLItemSerie read Get_ColunaValorTotal;
    property ColunaICMS: IXMLItemSerie read Get_ColunaICMS;
    property ColunaIPI: IXMLItemSerie read Get_ColunaIPI;
    property Clfiscal: IXMLItemSerie read Get_Clfiscal;
    property ColunaISS: IXMLItemSerie read Get_ColunaISS;
  end;

{ IXMLItemSerie }

  IXMLItemSerie = interface(IXMLNode)
    ['{69D12834-CDE6-4128-B127-474CBA4D5AF1}']
    { Property Accessors }
    function Get_Coluna: Integer;
    function Get_Visible: Boolean;
    function Get_TamanhoMaximo: Integer;
    function Get_Alinhamento: WideString;
    procedure Set_Coluna(Value: Integer);
    procedure Set_Visible(Value: Boolean);
    procedure Set_TamanhoMaximo(Value: Integer);
    procedure Set_Alinhamento(Value: WideString);
    { Methods & Properties }
    property Coluna: Integer read Get_Coluna write Set_Coluna;
    property Visible: Boolean read Get_Visible write Set_Visible;
    property TamanhoMaximo: Integer read Get_TamanhoMaximo write Set_TamanhoMaximo;
    property Alinhamento: WideString read Get_Alinhamento write Set_Alinhamento;
  end;

{ IXMLTipoObs }

  IXMLTipoObs = interface(IXMLNode)
    ['{F2EFE66C-AE26-4436-B86B-79C322F4C2AB}']
    { Property Accessors }
    function Get_QuantidadeLinhas: Integer;
    function Get_Linha: Integer;
    function Get_Coluna: Integer;
    function Get_Visible: Boolean;
    function Get_TamanhoMaximo: Integer;
    function Get_Alinhamento: WideString;
    procedure Set_QuantidadeLinhas(Value: Integer);
    procedure Set_Linha(Value: Integer);
    procedure Set_Coluna(Value: Integer);
    procedure Set_Visible(Value: Boolean);
    procedure Set_TamanhoMaximo(Value: Integer);
    procedure Set_Alinhamento(Value: WideString);
    { Methods & Properties }
    property QuantidadeLinhas: Integer read Get_QuantidadeLinhas write Set_QuantidadeLinhas;
    property Linha: Integer read Get_Linha write Set_Linha;
    property Coluna: Integer read Get_Coluna write Set_Coluna;
    property Visible: Boolean read Get_Visible write Set_Visible;
    property TamanhoMaximo: Integer read Get_TamanhoMaximo write Set_TamanhoMaximo;
    property Alinhamento: WideString read Get_Alinhamento write Set_Alinhamento;
  end;

{ Forward Decls }

  TXMLNotafiscal = class;
  TXMLModelo = class;
  TXMLElementoPadrao = class;
  TXMLTipoPreenchimento = class;
  TXMLPessoaTipo = class;
  TXMLTransporteTipo = class;
  TXMLItensNota = class;
  TXMLItemSerie = class;
  TXMLTipoObs = class;

{ TXMLNotafiscal }

  TXMLNotafiscal = class(TXMLNodeCollection, IXMLNotafiscal)
  protected
    { IXMLNotafiscal }
    function Get_Modelo(Index: Integer): IXMLModelo;
    function Add: IXMLModelo;
    function Insert(const Index: Integer): IXMLModelo;
  public
    procedure AfterConstruction; override;
  end;

{ TXMLModelo }

  TXMLModelo = class(TXMLNode, IXMLModelo)
  protected
    { IXMLModelo }
    function Get_Default: Boolean;
    function Get_Nome: WideString;
    function Get_Empresa: WideString;
    function Get_Papel: WideString;
    function Get_Largura: Double;
    function Get_Altura: Double;
    function Get_QuantidadeLinhas: Integer;
    function Get_QuantidadeColunas: Integer;
    function Get_NumeroNota: IXMLElementoPadrao;
    function Get_LocalEntrada: IXMLTipoPreenchimento;
    function Get_LocalSaida: IXMLTipoPreenchimento;
    function Get_NaturezaOperacao: IXMLElementoPadrao;
    function Get_Cfop: IXMLElementoPadrao;
    function Get_DataEmissao: IXMLElementoPadrao;
    function Get_HoraEmissao: IXMLElementoPadrao;
    function Get_DataSaidaEntrada: IXMLElementoPadrao;
    function Get_HoraSaidaEntrada: IXMLElementoPadrao;
    function Get_Emitente: IXMLPessoaTipo;
    function Get_Destinatario: IXMLPessoaTipo;
    function Get_Transporte: IXMLTransporteTipo;
    function Get_Produtos: IXMLItensNota;
    function Get_Servicos: IXMLItensNota;
    function Get_Bcicms: IXMLElementoPadrao;
    function Get_Totalicms: IXMLElementoPadrao;
    function Get_BcimcsST: IXMLElementoPadrao;
    function Get_TotalicmsST: IXMLElementoPadrao;
    function Get_Totalprodutos: IXMLElementoPadrao;
    function Get_Valorfrete: IXMLElementoPadrao;
    function Get_Valoripi: IXMLElementoPadrao;
    function Get_Valorseguro: IXMLElementoPadrao;
    function Get_Valortotalnota: IXMLElementoPadrao;
    function Get_ValorISS: IXMLElementoPadrao;
    function Get_Observacoes: IXMLTipoObs;
    function Get_AliquotaISS: IXMLElementoPadrao;
    function Get_CondicoesPagamento: IXMLElementoPadrao;
    procedure Set_Default(Value: Boolean);
    procedure Set_Nome(Value: WideString);
    procedure Set_Empresa(Value: WideString);
    procedure Set_Papel(Value: WideString);
    procedure Set_Largura(Value: Double);
    procedure Set_Altura(Value: Double);
    procedure Set_QuantidadeLinhas(Value: Integer);
    procedure Set_QuantidadeColunas(Value: Integer);
  public
    procedure AfterConstruction; override;
  end;

{ TXMLElementoPadrao }

  TXMLElementoPadrao = class(TXMLNode, IXMLElementoPadrao)
  protected
    { IXMLElementoPadrao }
    function Get_Linha: Integer;
    function Get_Coluna: Integer;
    function Get_Visible: Boolean;
    function Get_TamanhoMaximo: Integer;
    function Get_Alinhamento: WideString;
    procedure Set_Linha(Value: Integer);
    procedure Set_Coluna(Value: Integer);
    procedure Set_Visible(Value: Boolean);
    procedure Set_TamanhoMaximo(Value: Integer);
    procedure Set_Alinhamento(Value: WideString);
  end;

{ TXMLTipoPreenchimento }

  TXMLTipoPreenchimento = class(TXMLNode, IXMLTipoPreenchimento)
  protected
    { IXMLTipoPreenchimento }
    function Get_Linha: Integer;
    function Get_Coluna: Integer;
    function Get_Visible: Boolean;
    function Get_TamanhoMaximo: Integer;
    function Get_Alinhamento: WideString;
    function Get_PreencherCom: WideString;
    procedure Set_Linha(Value: Integer);
    procedure Set_Coluna(Value: Integer);
    procedure Set_Visible(Value: Boolean);
    procedure Set_TamanhoMaximo(Value: Integer);
    procedure Set_Alinhamento(Value: WideString);
    procedure Set_PreencherCom(Value: WideString);
  end;

{ TXMLPessoaTipo }

  TXMLPessoaTipo = class(TXMLNode, IXMLPessoaTipo)
  protected
    { IXMLPessoaTipo }
    function Get_Linha: Integer;
    function Get_Visible: Boolean;
    function Get_Nome: IXMLElementoPadrao;
    function Get_Cpfcnpj: IXMLElementoPadrao;
    function Get_InscricaoEstadual: IXMLElementoPadrao;
    function Get_Logradouro: IXMLElementoPadrao;
    function Get_Bairro: IXMLElementoPadrao;
    function Get_Cep: IXMLElementoPadrao;
    function Get_Municipio: IXMLElementoPadrao;
    function Get_Fonefax: IXMLElementoPadrao;
    function Get_Uf: IXMLElementoPadrao;
    procedure Set_Linha(Value: Integer);
    procedure Set_Visible(Value: Boolean);
  public
    procedure AfterConstruction; override;
  end;

{ TXMLTransporteTipo }

  TXMLTransporteTipo = class(TXMLPessoaTipo, IXMLTransporteTipo)
  protected
    { IXMLTransporteTipo }
    function Get_Indicadorfrete: IXMLElementoPadrao;
    function Get_Placa: IXMLElementoPadrao;
    function Get_Placauf: IXMLElementoPadrao;
    function Get_Quantidade: IXMLElementoPadrao;
    function Get_Especie: IXMLElementoPadrao;
    function Get_Marca: IXMLElementoPadrao;
    function Get_Numero: IXMLElementoPadrao;
    function Get_Pesobruto: IXMLElementoPadrao;
    function Get_Pesoliquido: IXMLElementoPadrao;
  public
    procedure AfterConstruction; override;
  end;

{ TXMLItensNota }

  TXMLItensNota = class(TXMLNode, IXMLItensNota)
  protected
    { IXMLItensNota }
    function Get_MaxItens: Integer;
    function Get_Linha: Integer;
    function Get_Visible: Boolean;
    function Get_Colunacodigo: IXMLItemSerie;
    function Get_Colunadescricao: IXMLItemSerie;
    function Get_ColunaST: IXMLItemSerie;
    function Get_ColunaUnidade: IXMLItemSerie;
    function Get_ColunaQuantidade: IXMLItemSerie;
    function Get_ColunaValorUnitario: IXMLItemSerie;
    function Get_ColunaValorTotal: IXMLItemSerie;
    function Get_ColunaICMS: IXMLItemSerie;
    function Get_ColunaIPI: IXMLItemSerie;
    function Get_Clfiscal: IXMLItemSerie;
    function Get_ColunaISS: IXMLItemSerie;
    procedure Set_MaxItens(Value: Integer);
    procedure Set_Linha(Value: Integer);
    procedure Set_Visible(Value: Boolean);
  public
    procedure AfterConstruction; override;
  end;

{ TXMLItemSerie }

  TXMLItemSerie = class(TXMLNode, IXMLItemSerie)
  protected
    { IXMLItemSerie }
    function Get_Coluna: Integer;
    function Get_Visible: Boolean;
    function Get_TamanhoMaximo: Integer;
    function Get_Alinhamento: WideString;
    procedure Set_Coluna(Value: Integer);
    procedure Set_Visible(Value: Boolean);
    procedure Set_TamanhoMaximo(Value: Integer);
    procedure Set_Alinhamento(Value: WideString);
  end;

{ TXMLTipoObs }

  TXMLTipoObs = class(TXMLNode, IXMLTipoObs)
  protected
    { IXMLTipoObs }
    function Get_QuantidadeLinhas: Integer;
    function Get_Linha: Integer;
    function Get_Coluna: Integer;
    function Get_Visible: Boolean;
    function Get_TamanhoMaximo: Integer;
    function Get_Alinhamento: WideString;
    procedure Set_QuantidadeLinhas(Value: Integer);
    procedure Set_Linha(Value: Integer);
    procedure Set_Coluna(Value: Integer);
    procedure Set_Visible(Value: Boolean);
    procedure Set_TamanhoMaximo(Value: Integer);
    procedure Set_Alinhamento(Value: WideString);
  end;

{ Global Functions }

function Getnotafiscal(Doc: IXMLDocument): IXMLNotafiscal;
function Loadnotafiscal(const FileName: WideString): IXMLNotafiscal;
function Newnotafiscal: IXMLNotafiscal;

const
  TargetNamespace = '';

implementation

{ Global Functions }

function Getnotafiscal(Doc: IXMLDocument): IXMLNotafiscal;
begin
  Result := Doc.GetDocBinding('notafiscal', TXMLNotafiscal, TargetNamespace) as IXMLNotafiscal;
end;

function Loadnotafiscal(const FileName: WideString): IXMLNotafiscal;
begin
  Result := LoadXMLDocument(FileName).GetDocBinding('notafiscal', TXMLNotafiscal, TargetNamespace) as IXMLNotafiscal;
end;

function Newnotafiscal: IXMLNotafiscal;
begin
  Result := NewXMLDocument.GetDocBinding('notafiscal', TXMLNotafiscal, TargetNamespace) as IXMLNotafiscal;
end;

{ TXMLNotafiscal }

procedure TXMLNotafiscal.AfterConstruction;
begin
  RegisterChildNode('modelo', TXMLModelo);
  ItemTag := 'modelo';
  ItemInterface := IXMLModelo;
  inherited;
end;

function TXMLNotafiscal.Get_Modelo(Index: Integer): IXMLModelo;
begin
  Result := List[Index] as IXMLModelo;
end;

function TXMLNotafiscal.Add: IXMLModelo;
begin
  Result := AddItem(-1) as IXMLModelo;
end;

function TXMLNotafiscal.Insert(const Index: Integer): IXMLModelo;
begin
  Result := AddItem(Index) as IXMLModelo;
end;

{ TXMLModelo }

procedure TXMLModelo.AfterConstruction;
begin
  RegisterChildNode('numeroNota', TXMLElementoPadrao);
  RegisterChildNode('localEntrada', TXMLTipoPreenchimento);
  RegisterChildNode('localSaida', TXMLTipoPreenchimento);
  RegisterChildNode('naturezaOperacao', TXMLElementoPadrao);
  RegisterChildNode('cfop', TXMLElementoPadrao);
  RegisterChildNode('dataEmissao', TXMLElementoPadrao);
  RegisterChildNode('horaEmissao', TXMLElementoPadrao);
  RegisterChildNode('dataSaidaEntrada', TXMLElementoPadrao);
  RegisterChildNode('horaSaidaEntrada', TXMLElementoPadrao);
  RegisterChildNode('emitente', TXMLPessoaTipo);
  RegisterChildNode('destinatario', TXMLPessoaTipo);
  RegisterChildNode('transporte', TXMLTransporteTipo);
  RegisterChildNode('produtos', TXMLItensNota);
  RegisterChildNode('servicos', TXMLItensNota);
  RegisterChildNode('bcicms', TXMLElementoPadrao);
  RegisterChildNode('totalicms', TXMLElementoPadrao);
  RegisterChildNode('bcimcsST', TXMLElementoPadrao);
  RegisterChildNode('totalicmsST', TXMLElementoPadrao);
  RegisterChildNode('totalprodutos', TXMLElementoPadrao);
  RegisterChildNode('valorfrete', TXMLElementoPadrao);
  RegisterChildNode('valoripi', TXMLElementoPadrao);
  RegisterChildNode('valorseguro', TXMLElementoPadrao);
  RegisterChildNode('valortotalnota', TXMLElementoPadrao);
  RegisterChildNode('valorISS', TXMLElementoPadrao);
  RegisterChildNode('observacoes', TXMLTipoObs);
  RegisterChildNode('aliquotaISS', TXMLElementoPadrao);
  RegisterChildNode('condicoesPagamento', TXMLElementoPadrao);
  inherited;
end;

function TXMLModelo.Get_Default: Boolean;
begin
  Result := AttributeNodes['default'].NodeValue;
end;

procedure TXMLModelo.Set_Default(Value: Boolean);
begin
  SetAttribute('default', Value);
end;

function TXMLModelo.Get_Nome: WideString;
begin
  Result := AttributeNodes['nome'].Text;
end;

procedure TXMLModelo.Set_Nome(Value: WideString);
begin
  SetAttribute('nome', Value);
end;

function TXMLModelo.Get_Empresa: WideString;
begin
  Result := AttributeNodes['empresa'].Text;
end;

procedure TXMLModelo.Set_Empresa(Value: WideString);
begin
  SetAttribute('empresa', Value);
end;

function TXMLModelo.Get_Papel: WideString;
begin
  Result := AttributeNodes['papel'].Text;
end;

procedure TXMLModelo.Set_Papel(Value: WideString);
begin
  SetAttribute('papel', Value);
end;

function TXMLModelo.Get_Largura: Double;
begin
  Result := AttributeNodes['largura'].NodeValue;
end;

procedure TXMLModelo.Set_Largura(Value: Double);
begin
  SetAttribute('largura', Value);
end;

function TXMLModelo.Get_Altura: Double;
begin
  Result := AttributeNodes['altura'].NodeValue;
end;

procedure TXMLModelo.Set_Altura(Value: Double);
begin
  SetAttribute('altura', Value);
end;

function TXMLModelo.Get_QuantidadeLinhas: Integer;
begin
  Result := AttributeNodes['quantidadeLinhas'].NodeValue;
end;

procedure TXMLModelo.Set_QuantidadeLinhas(Value: Integer);
begin
  SetAttribute('quantidadeLinhas', Value);
end;

function TXMLModelo.Get_QuantidadeColunas: Integer;
begin
  Result := AttributeNodes['quantidadeColunas'].NodeValue;
end;

procedure TXMLModelo.Set_QuantidadeColunas(Value: Integer);
begin
  SetAttribute('quantidadeColunas', Value);
end;

function TXMLModelo.Get_NumeroNota: IXMLElementoPadrao;
begin
  Result := ChildNodes['numeroNota'] as IXMLElementoPadrao;
end;

function TXMLModelo.Get_LocalEntrada: IXMLTipoPreenchimento;
begin
  Result := ChildNodes['localEntrada'] as IXMLTipoPreenchimento;
end;

function TXMLModelo.Get_LocalSaida: IXMLTipoPreenchimento;
begin
  Result := ChildNodes['localSaida'] as IXMLTipoPreenchimento;
end;

function TXMLModelo.Get_NaturezaOperacao: IXMLElementoPadrao;
begin
  Result := ChildNodes['naturezaOperacao'] as IXMLElementoPadrao;
end;

function TXMLModelo.Get_Cfop: IXMLElementoPadrao;
begin
  Result := ChildNodes['cfop'] as IXMLElementoPadrao;
end;

function TXMLModelo.Get_DataEmissao: IXMLElementoPadrao;
begin
  Result := ChildNodes['dataEmissao'] as IXMLElementoPadrao;
end;

function TXMLModelo.Get_HoraEmissao: IXMLElementoPadrao;
begin
  Result := ChildNodes['horaEmissao'] as IXMLElementoPadrao;
end;

function TXMLModelo.Get_DataSaidaEntrada: IXMLElementoPadrao;
begin
  Result := ChildNodes['dataSaidaEntrada'] as IXMLElementoPadrao;
end;

function TXMLModelo.Get_HoraSaidaEntrada: IXMLElementoPadrao;
begin
  Result := ChildNodes['horaSaidaEntrada'] as IXMLElementoPadrao;
end;

function TXMLModelo.Get_Emitente: IXMLPessoaTipo;
begin
  Result := ChildNodes['emitente'] as IXMLPessoaTipo;
end;

function TXMLModelo.Get_Destinatario: IXMLPessoaTipo;
begin
  Result := ChildNodes['destinatario'] as IXMLPessoaTipo;
end;

function TXMLModelo.Get_Transporte: IXMLTransporteTipo;
begin
  Result := ChildNodes['transporte'] as IXMLTransporteTipo;
end;

function TXMLModelo.Get_Produtos: IXMLItensNota;
begin
  Result := ChildNodes['produtos'] as IXMLItensNota;
end;

function TXMLModelo.Get_Servicos: IXMLItensNota;
begin
  Result := ChildNodes['servicos'] as IXMLItensNota;
end;

function TXMLModelo.Get_Bcicms: IXMLElementoPadrao;
begin
  Result := ChildNodes['bcicms'] as IXMLElementoPadrao;
end;

function TXMLModelo.Get_Totalicms: IXMLElementoPadrao;
begin
  Result := ChildNodes['totalicms'] as IXMLElementoPadrao;
end;

function TXMLModelo.Get_BcimcsST: IXMLElementoPadrao;
begin
  Result := ChildNodes['bcimcsST'] as IXMLElementoPadrao;
end;

function TXMLModelo.Get_TotalicmsST: IXMLElementoPadrao;
begin
  Result := ChildNodes['totalicmsST'] as IXMLElementoPadrao;
end;

function TXMLModelo.Get_Totalprodutos: IXMLElementoPadrao;
begin
  Result := ChildNodes['totalprodutos'] as IXMLElementoPadrao;
end;

function TXMLModelo.Get_Valorfrete: IXMLElementoPadrao;
begin
  Result := ChildNodes['valorfrete'] as IXMLElementoPadrao;
end;

function TXMLModelo.Get_Valoripi: IXMLElementoPadrao;
begin
  Result := ChildNodes['valoripi'] as IXMLElementoPadrao;
end;

function TXMLModelo.Get_Valorseguro: IXMLElementoPadrao;
begin
  Result := ChildNodes['valorseguro'] as IXMLElementoPadrao;
end;

function TXMLModelo.Get_Valortotalnota: IXMLElementoPadrao;
begin
  Result := ChildNodes['valortotalnota'] as IXMLElementoPadrao;
end;

function TXMLModelo.Get_ValorISS: IXMLElementoPadrao;
begin
  Result := ChildNodes['valorISS'] as IXMLElementoPadrao;
end;

function TXMLModelo.Get_Observacoes: IXMLTipoObs;
begin
  Result := ChildNodes['observacoes'] as IXMLTipoObs;
end;

function TXMLModelo.Get_AliquotaISS: IXMLElementoPadrao;
begin
  Result := ChildNodes['aliquotaISS'] as IXMLElementoPadrao;
end;

function TXMLModelo.Get_CondicoesPagamento: IXMLElementoPadrao;
begin
  Result := ChildNodes['condicoesPagamento'] as IXMLElementoPadrao;
end;

{ TXMLElementoPadrao }

function TXMLElementoPadrao.Get_Linha: Integer;
begin
  Result := AttributeNodes['linha'].NodeValue;
end;

procedure TXMLElementoPadrao.Set_Linha(Value: Integer);
begin
  SetAttribute('linha', Value);
end;

function TXMLElementoPadrao.Get_Coluna: Integer;
begin
  Result := AttributeNodes['coluna'].NodeValue;
end;

procedure TXMLElementoPadrao.Set_Coluna(Value: Integer);
begin
  SetAttribute('coluna', Value);
end;

function TXMLElementoPadrao.Get_Visible: Boolean;
begin
  Result := AttributeNodes['visible'].NodeValue;
end;

procedure TXMLElementoPadrao.Set_Visible(Value: Boolean);
begin
  SetAttribute('visible', Value);
end;

function TXMLElementoPadrao.Get_TamanhoMaximo: Integer;
begin
  Result := AttributeNodes['tamanhoMaximo'].NodeValue;
end;

procedure TXMLElementoPadrao.Set_TamanhoMaximo(Value: Integer);
begin
  SetAttribute('tamanhoMaximo', Value);
end;

function TXMLElementoPadrao.Get_Alinhamento: WideString;
begin
  Result := AttributeNodes['alinhamento'].Text;
end;

procedure TXMLElementoPadrao.Set_Alinhamento(Value: WideString);
begin
  SetAttribute('alinhamento', Value);
end;

{ TXMLTipoPreenchimento }

function TXMLTipoPreenchimento.Get_Linha: Integer;
begin
  Result := AttributeNodes['linha'].NodeValue;
end;

procedure TXMLTipoPreenchimento.Set_Linha(Value: Integer);
begin
  SetAttribute('linha', Value);
end;

function TXMLTipoPreenchimento.Get_Coluna: Integer;
begin
  Result := AttributeNodes['coluna'].NodeValue;
end;

procedure TXMLTipoPreenchimento.Set_Coluna(Value: Integer);
begin
  SetAttribute('coluna', Value);
end;

function TXMLTipoPreenchimento.Get_Visible: Boolean;
begin
  Result := AttributeNodes['visible'].NodeValue;
end;

procedure TXMLTipoPreenchimento.Set_Visible(Value: Boolean);
begin
  SetAttribute('visible', Value);
end;

function TXMLTipoPreenchimento.Get_TamanhoMaximo: Integer;
begin
  Result := AttributeNodes['tamanhoMaximo'].NodeValue;
end;

procedure TXMLTipoPreenchimento.Set_TamanhoMaximo(Value: Integer);
begin
  SetAttribute('tamanhoMaximo', Value);
end;

function TXMLTipoPreenchimento.Get_Alinhamento: WideString;
begin
  Result := AttributeNodes['alinhamento'].Text;
end;

procedure TXMLTipoPreenchimento.Set_Alinhamento(Value: WideString);
begin
  SetAttribute('alinhamento', Value);
end;

function TXMLTipoPreenchimento.Get_PreencherCom: WideString;
begin
  Result := ChildNodes['preencherCom'].Text;
end;

procedure TXMLTipoPreenchimento.Set_PreencherCom(Value: WideString);
begin
  ChildNodes['preencherCom'].NodeValue := Value;
end;

{ TXMLPessoaTipo }

procedure TXMLPessoaTipo.AfterConstruction;
begin
  RegisterChildNode('nome', TXMLElementoPadrao);
  RegisterChildNode('cpfcnpj', TXMLElementoPadrao);
  RegisterChildNode('inscricaoEstadual', TXMLElementoPadrao);
  RegisterChildNode('logradouro', TXMLElementoPadrao);
  RegisterChildNode('bairro', TXMLElementoPadrao);
  RegisterChildNode('cep', TXMLElementoPadrao);
  RegisterChildNode('municipio', TXMLElementoPadrao);
  RegisterChildNode('fonefax', TXMLElementoPadrao);
  RegisterChildNode('uf', TXMLElementoPadrao);
  inherited;
end;

function TXMLPessoaTipo.Get_Linha: Integer;
begin
  Result := AttributeNodes['linha'].NodeValue;
end;

procedure TXMLPessoaTipo.Set_Linha(Value: Integer);
begin
  SetAttribute('linha', Value);
end;

function TXMLPessoaTipo.Get_Visible: Boolean;
begin
  Result := AttributeNodes['visible'].NodeValue;
end;

procedure TXMLPessoaTipo.Set_Visible(Value: Boolean);
begin
  SetAttribute('visible', Value);
end;

function TXMLPessoaTipo.Get_Nome: IXMLElementoPadrao;
begin
  Result := ChildNodes['nome'] as IXMLElementoPadrao;
end;

function TXMLPessoaTipo.Get_Cpfcnpj: IXMLElementoPadrao;
begin
  Result := ChildNodes['cpfcnpj'] as IXMLElementoPadrao;
end;

function TXMLPessoaTipo.Get_InscricaoEstadual: IXMLElementoPadrao;
begin
  Result := ChildNodes['inscricaoEstadual'] as IXMLElementoPadrao;
end;

function TXMLPessoaTipo.Get_Logradouro: IXMLElementoPadrao;
begin
  Result := ChildNodes['logradouro'] as IXMLElementoPadrao;
end;

function TXMLPessoaTipo.Get_Bairro: IXMLElementoPadrao;
begin
  Result := ChildNodes['bairro'] as IXMLElementoPadrao;
end;

function TXMLPessoaTipo.Get_Cep: IXMLElementoPadrao;
begin
  Result := ChildNodes['cep'] as IXMLElementoPadrao;
end;

function TXMLPessoaTipo.Get_Municipio: IXMLElementoPadrao;
begin
  Result := ChildNodes['municipio'] as IXMLElementoPadrao;
end;

function TXMLPessoaTipo.Get_Fonefax: IXMLElementoPadrao;
begin
  Result := ChildNodes['fonefax'] as IXMLElementoPadrao;
end;

function TXMLPessoaTipo.Get_Uf: IXMLElementoPadrao;
begin
  Result := ChildNodes['uf'] as IXMLElementoPadrao;
end;

{ TXMLTransporteTipo }

procedure TXMLTransporteTipo.AfterConstruction;
begin
  RegisterChildNode('indicadorfrete', TXMLElementoPadrao);
  RegisterChildNode('placa', TXMLElementoPadrao);
  RegisterChildNode('placauf', TXMLElementoPadrao);
  RegisterChildNode('quantidade', TXMLElementoPadrao);
  RegisterChildNode('especie', TXMLElementoPadrao);
  RegisterChildNode('marca', TXMLElementoPadrao);
  RegisterChildNode('numero', TXMLElementoPadrao);
  RegisterChildNode('pesobruto', TXMLElementoPadrao);
  RegisterChildNode('pesoliquido', TXMLElementoPadrao);
  inherited;
end;

function TXMLTransporteTipo.Get_Indicadorfrete: IXMLElementoPadrao;
begin
  Result := ChildNodes['indicadorfrete'] as IXMLElementoPadrao;
end;

function TXMLTransporteTipo.Get_Placa: IXMLElementoPadrao;
begin
  Result := ChildNodes['placa'] as IXMLElementoPadrao;
end;

function TXMLTransporteTipo.Get_Placauf: IXMLElementoPadrao;
begin
  Result := ChildNodes['placauf'] as IXMLElementoPadrao;
end;

function TXMLTransporteTipo.Get_Quantidade: IXMLElementoPadrao;
begin
  Result := ChildNodes['quantidade'] as IXMLElementoPadrao;
end;

function TXMLTransporteTipo.Get_Especie: IXMLElementoPadrao;
begin
  Result := ChildNodes['especie'] as IXMLElementoPadrao;
end;

function TXMLTransporteTipo.Get_Marca: IXMLElementoPadrao;
begin
  Result := ChildNodes['marca'] as IXMLElementoPadrao;
end;

function TXMLTransporteTipo.Get_Numero: IXMLElementoPadrao;
begin
  Result := ChildNodes['numero'] as IXMLElementoPadrao;
end;

function TXMLTransporteTipo.Get_Pesobruto: IXMLElementoPadrao;
begin
  Result := ChildNodes['pesobruto'] as IXMLElementoPadrao;
end;

function TXMLTransporteTipo.Get_Pesoliquido: IXMLElementoPadrao;
begin
  Result := ChildNodes['pesoliquido'] as IXMLElementoPadrao;
end;

{ TXMLItensNota }

procedure TXMLItensNota.AfterConstruction;
begin
  RegisterChildNode('colunacodigo', TXMLItemSerie);
  RegisterChildNode('colunadescricao', TXMLItemSerie);
  RegisterChildNode('colunaST', TXMLItemSerie);
  RegisterChildNode('colunaUnidade', TXMLItemSerie);
  RegisterChildNode('colunaQuantidade', TXMLItemSerie);
  RegisterChildNode('colunaValorUnitario', TXMLItemSerie);
  RegisterChildNode('colunaValorTotal', TXMLItemSerie);
  RegisterChildNode('colunaICMS', TXMLItemSerie);
  RegisterChildNode('colunaIPI', TXMLItemSerie);
  RegisterChildNode('clfiscal', TXMLItemSerie);
  RegisterChildNode('colunaISS', TXMLItemSerie);
  inherited;
end;

function TXMLItensNota.Get_MaxItens: Integer;
begin
  Result := AttributeNodes['maxItens'].NodeValue;
end;

procedure TXMLItensNota.Set_MaxItens(Value: Integer);
begin
  SetAttribute('maxItens', Value);
end;

function TXMLItensNota.Get_Linha: Integer;
begin
  Result := AttributeNodes['linha'].NodeValue;
end;

procedure TXMLItensNota.Set_Linha(Value: Integer);
begin
  SetAttribute('linha', Value);
end;

function TXMLItensNota.Get_Visible: Boolean;
begin
  Result := AttributeNodes['visible'].NodeValue;
end;

procedure TXMLItensNota.Set_Visible(Value: Boolean);
begin
  SetAttribute('visible', Value);
end;

function TXMLItensNota.Get_Colunacodigo: IXMLItemSerie;
begin
  Result := ChildNodes['colunacodigo'] as IXMLItemSerie;
end;

function TXMLItensNota.Get_Colunadescricao: IXMLItemSerie;
begin
  Result := ChildNodes['colunadescricao'] as IXMLItemSerie;
end;

function TXMLItensNota.Get_ColunaST: IXMLItemSerie;
begin
  Result := ChildNodes['colunaST'] as IXMLItemSerie;
end;

function TXMLItensNota.Get_ColunaUnidade: IXMLItemSerie;
begin
  Result := ChildNodes['colunaUnidade'] as IXMLItemSerie;
end;

function TXMLItensNota.Get_ColunaQuantidade: IXMLItemSerie;
begin
  Result := ChildNodes['colunaQuantidade'] as IXMLItemSerie;
end;

function TXMLItensNota.Get_ColunaValorUnitario: IXMLItemSerie;
begin
  Result := ChildNodes['colunaValorUnitario'] as IXMLItemSerie;
end;

function TXMLItensNota.Get_ColunaValorTotal: IXMLItemSerie;
begin
  Result := ChildNodes['colunaValorTotal'] as IXMLItemSerie;
end;

function TXMLItensNota.Get_ColunaICMS: IXMLItemSerie;
begin
  Result := ChildNodes['colunaICMS'] as IXMLItemSerie;
end;

function TXMLItensNota.Get_ColunaIPI: IXMLItemSerie;
begin
  Result := ChildNodes['colunaIPI'] as IXMLItemSerie;
end;

function TXMLItensNota.Get_Clfiscal: IXMLItemSerie;
begin
  Result := ChildNodes['clfiscal'] as IXMLItemSerie;
end;

function TXMLItensNota.Get_ColunaISS: IXMLItemSerie;
begin
  Result := ChildNodes['colunaISS'] as IXMLItemSerie;
end;

{ TXMLItemSerie }

function TXMLItemSerie.Get_Coluna: Integer;
begin
  Result := AttributeNodes['coluna'].NodeValue;
end;

procedure TXMLItemSerie.Set_Coluna(Value: Integer);
begin
  SetAttribute('coluna', Value);
end;

function TXMLItemSerie.Get_Visible: Boolean;
begin
  Result := AttributeNodes['visible'].NodeValue;
end;

procedure TXMLItemSerie.Set_Visible(Value: Boolean);
begin
  SetAttribute('visible', Value);
end;

function TXMLItemSerie.Get_TamanhoMaximo: Integer;
begin
  Result := AttributeNodes['tamanhoMaximo'].NodeValue;
end;

procedure TXMLItemSerie.Set_TamanhoMaximo(Value: Integer);
begin
  SetAttribute('tamanhoMaximo', Value);
end;

function TXMLItemSerie.Get_Alinhamento: WideString;
begin
  Result := AttributeNodes['alinhamento'].Text;
end;

procedure TXMLItemSerie.Set_Alinhamento(Value: WideString);
begin
  SetAttribute('alinhamento', Value);
end;

{ TXMLTipoObs }

function TXMLTipoObs.Get_QuantidadeLinhas: Integer;
begin
  Result := AttributeNodes['quantidadeLinhas'].NodeValue;
end;

procedure TXMLTipoObs.Set_QuantidadeLinhas(Value: Integer);
begin
  SetAttribute('quantidadeLinhas', Value);
end;

function TXMLTipoObs.Get_Linha: Integer;
begin
  Result := AttributeNodes['linha'].NodeValue;
end;

procedure TXMLTipoObs.Set_Linha(Value: Integer);
begin
  SetAttribute('linha', Value);
end;

function TXMLTipoObs.Get_Coluna: Integer;
begin
  Result := AttributeNodes['coluna'].NodeValue;
end;

procedure TXMLTipoObs.Set_Coluna(Value: Integer);
begin
  SetAttribute('coluna', Value);
end;

function TXMLTipoObs.Get_Visible: Boolean;
begin
  Result := AttributeNodes['visible'].NodeValue;
end;

procedure TXMLTipoObs.Set_Visible(Value: Boolean);
begin
  SetAttribute('visible', Value);
end;

function TXMLTipoObs.Get_TamanhoMaximo: Integer;
begin
  Result := AttributeNodes['tamanhoMaximo'].NodeValue;
end;

procedure TXMLTipoObs.Set_TamanhoMaximo(Value: Integer);
begin
  SetAttribute('tamanhoMaximo', Value);
end;

function TXMLTipoObs.Get_Alinhamento: WideString;
begin
  Result := AttributeNodes['alinhamento'].Text;
end;

procedure TXMLTipoObs.Set_Alinhamento(Value: WideString);
begin
  SetAttribute('alinhamento', Value);
end;

end.